package cn.dancepeak.article.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Document("t_article") //实体类对应的mongodb 没有会自动创建
public class Article {
    @Id  //对应mongodb的表的_id 建议不设置 修改的时候可以带上
    private String _id;

    /** 主键ID*/
    private Long id;
    /** 文章封面*/
    private String articlePic;
    /** 文章名称*/
    private String articleName;
    /** 文章标签*/
    private String articleTag;
    /** 文章类型*/
    private Long articleType;
    /** 文章类型的父类名称*/
    private String articleTypeName;
    /** 文章状态(0:草稿;1:发布;2:弃用)*/
    private Integer articleState;
    /** 是否置顶(0:不置顶;1:置顶)*/
    private Integer topState;
    /** 作者ID*/
    private Long publishId;
    /** 作者名字*/
    private String realName;
    /** 发布时间*/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    /** 修改时间*/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    /** 文章阅读量*/
    private Integer articleReadCount;
    private Integer num;//返回的相同文章类型的阅读数量
    /** 文章点赞数*/
    private Integer articleStarNum;
    /** 文章评论数*/
    private Integer articleCommentNum;
    /** 文章简介*/
    private String articleRemark;
    /** 文章内容*/
    private String articleContent;
}
